SEARCH OF CLONES IN PROGRAM CODE
Annotation
Subject of Research. The paper presents research of existing approaches and methods for the search of clones in the program code. As a result of the study, a method is developed that implements a semantic approach for the search of duplicated fragments focused on all kinds of clones. Method. The developed method is based on the analysis of the program dependency graph built from the source code files. To detect duplicate fragments, for each source code file dependency program graphs are generated with the nodes hashed on the basis of their content properties. Each pair of nodes is selected from each equivalence class, and two isomorphic subgraphs are identified that include a pair of nodes. If a pair of clones is included into another pair, it is removed from the set of the found pairs of duplicated fragments. A set of clones is generated from the pairs of duplicated fragments that share the same isomorphic subgraphs, that is, the pairs of clones are expanded. Main Results. To evaluate the efficiency of the developed method of searching for clones, the files have been compared for determination of the clone types that the system using this method detects, and the testing has been performed on the real system components. The results of the developed system have been compared to the real ones. Practical Relevance. The proposed algorithm makes it possible to automate the analysis of source files. Detecting of clones in the program code is a priority direction in code analysis, since the detection of duplicate fragments provides for the fight against unscrupulous copying of program code.
Keywords
Постоянный URL
Articles in current issue
- PRODUCIBILITY ANALYSIS OF LENS SYSTEM DURING OPTICAL DESIGN STAGE(in English)
- EFFECT OF LASER PROCESSING PARAMETERS ON SPECTRAL CHARACTERISTICS OF SILVER-IMPREGNATED TITANIUM DIOXIDE THIN FILMS
- OPTICAL MODULE DESIGN FOR AUGMENTED REALITY GLASSES
- SEARCH QUALITY METHODOLOGY AND PARTICULAR FINDINGS FOR KEY POINTS BASED ON MATERIALS OF OPTICAL-ELECTRONIC AERIAL SURVEY
- ROUGHNESS STUDY OF PAPER MADE FROM SECONDARY RAW MATERIALS BY ATOMIC FORCE MICROSCOPY
- METHOD FOR HYPERPARAMETER TUNING IN MACHINE LEARNING TASKS FOR STOCHASTIC OBJECTS CLASSIFICATION
- HIERARCHICAL DIAGNOSTIC MODEL SYNTHESIS FOR DATAFLOW REAL-TIME COMPUTING SYSTEM
- COMPARATIVE ANALYSIS OF METHODS FOR IMBALANCE ELIMINATION OF EMOTION CLASSES IN VIDEO DATA OF FACIAL EXPRESSIONS
- CMSA/CA PROTOCOL ANALYSIS IN OMNET++ ENVIRONMENT WITH INET FRAMEWORK
- METHOD OF ARTIFICIAL FITNESS LEVELS FOR DYNAMICS ANALYSIS OF EVOLUTIONARY ALGORITHMS
- DETERMINATION OF PACKED AND ENCRYPTED DATA IN EMBEDDED SOFTWARE
- SEARCH OF CLONES IN PROGRAM CODE
- CONFIGURABLE IOT DEVICES BASED ON ESP8266 SOC SYSTEM AND MQTT PROTOCOL
- NOISE IMMUNITY OF WIRELESS PERSONAL AREA NETWORKS UNDER DIGITAL PRODUCTION CONDITIONS
- DISTRIBUTED CONVOLUTIONAL NEURAL NETWORK MODEL ON RESOURCE-CONSTRAINED CLUSTER
- TRAFFIC AUTHENTICITY ANALYSIS BASED ON DIGITAL FINGERPRINT DATA OF NETWORK PROTOCOL IMPLEMENTATIONS
- PROCESS CHARACTERISTICS ESTIMATION IN WEB APPLICATIONS USING K-MEANS CLUSTERING
- MULTILINE BRAILLE DISPLAY CONSTRUCTION MODEL
- APPLICATION OF LASER RADIATION FOR PLANT GROWTH STIMULATION
- RISK IDENTIFICATION OF SECURITY INFORMATION VIOLATIONS IN CYBER-PHYSICAL SYSTEMS BASED ON ANALYSIS OF DIGITAL SIGNALS